home *** CD-ROM | disk | FTP | other *** search
/ CD Ware Multimedia 1995 May / cd Ware (Juegos) Epimundo.iso / DOS / C / RANDGEN.ZIP / RANDGEN.C < prev   
Encoding:
C/C++ Source or Header  |  1988-07-28  |  710 b   |  36 lines

  1. static unsigned randarray[55];
  2. static int m,n, k;
  3.  
  4. unsigned random(void);
  5.  
  6. main() {
  7.   randseed();
  8.   for (k = 1; k < 100; k++)
  9.     printf("%u\n", random());
  10. }
  11.  
  12. /*
  13.    Seed our random number generator using Microsoft C 4.0
  14.       library rand() function
  15. */
  16. randseed()
  17. {
  18.     register int k;
  19.     srand(1);                   /* Seed the built-in random rumber generator */
  20.     for(k = 0; k < 55; k++)randarray[k] = (unsigned)(rand()+rand());
  21.     m = 23;
  22.     n = 54;
  23. }
  24. /*
  25.     Generate a pseudo-random unsigned int
  26. */
  27. unsigned random(void)
  28. {
  29.     register unsigned temp = randarray[n] += randarray[m];
  30.     if(m == 0)m = 55;
  31.     if(n == 0)n = 55;
  32.     m--;
  33.     n--;
  34.     return(temp);
  35. }
  36.